﻿' LibWowArmory
' by Ronald M. Clifford (roncli@roncli.com)
' ItemTooltip classes contributed by Lukan Schwigtenberg (sepai69@gmail.com)
'
' This source code is released under the GNU Library General Public License (LGPL) Version 2.1.

Imports System.Collections.ObjectModel

Namespace roncliProductions.LibWowArmory.Item.Tooltip

    ''' <summary>
    ''' A class that encapsulates set information
    ''' </summary>
    ''' <remarks></remarks>
    Public Class SetData
        Private srsSkills As Collection(Of SetRequiredSkill)
        Private siItems As Collection(Of SetItem)
        Private sbBonuses As Collection(Of SetBonus)

        ''' <summary>
        ''' The name of this set
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property Name As String

        ''' <summary>
        ''' The list of skills required to get the bonuses from this set
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public ReadOnly Property RequiredSkills As Collection(Of SetRequiredSkill)
            Get
                Return srsSkills
            End Get
        End Property

        ''' <summary>
        ''' The list of items in the set
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public ReadOnly Property Items As Collection(Of SetItem)
            Get
                Return siItems
            End Get
        End Property

        ''' <summary>
        ''' The list of bonuses for completing parts of the set
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public ReadOnly Property SetBonuses As Collection(Of SetBonus)
            Get
                Return sbBonuses
            End Get
        End Property

        ''' <summary>
        ''' A constructor to create new set information
        ''' </summary>
        ''' <param name="strName"></param>
        ''' <param name="srsSkills"></param>
        ''' <param name="siItems"></param>
        ''' <param name="sbBonuses"></param>
        ''' <remarks></remarks>
        Public Sub New(ByVal strName As String, ByVal srsSkills As Collection(Of SetRequiredSkill), ByVal siItems As Collection(Of SetItem), ByVal sbBonuses As Collection(Of SetBonus))
            Name = strName
            Me.srsSkills = srsSkills
            Me.siItems = siItems
            Me.sbBonuses = sbBonuses
        End Sub

    End Class

End Namespace
